package com.geek.tutorial.itext.text;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Chunk;
import com.lowagie.text.Font;
import com.lowagie.text.Document;
import com.lowagie.text.pdf.PdfWriter;
import com.lowagie.text.Phrase;
import java.io.*;
import java.awt.Color;
import com.geek.tutorial.itext.image.*;
import com.lowagie.text.pdf.PdfPTable;

public class crearBPDEX {

	public ByteArrayOutputStream crearBPDEX() throws Exception {
	
		Document document = new Document();
                ByteArrayOutputStream buffer = new ByteArrayOutputStream();
		PdfWriter.getInstance(document, buffer);
		document.open();
          //      document.add(new Paragraph("Simple Image"));
	//	com.lowagie.text.Image image = com.lowagie.text.Image.getInstance("logoBPDEX.jpg");                
	//	document.add(image);
                Font font = new Font(Font.TIMES_ROMAN, 16, Font.BOLD);
		font.setColor(new Color(0x00, 0x00, 0x00));
		Chunk chunk = new Chunk("                   Formato único para el aval de iniciativas y proyectos", font);				
		Phrase phrase = new Phrase(30, ""); 
		phrase.add(chunk); 
		Paragraph para = new Paragraph();
                para.add(phrase);
                document.add(chunk);
                Font font2 = new Font(Font.TIMES_ROMAN, 12, Font.BOLD);
		font2.setColor(new Color(0x00, 0x00, 0x00));
                document.add(new Paragraph("\n"));
                Font font3 = new Font(Font.TIMES_ROMAN, 12, Font.NORMAL);
		font3.setColor(new Color(0x00, 0x00, 0x00));
                Font font4 = new Font(Font.TIMES_ROMAN, 12, Font.UNDERLINE);
		font4.setColor(new Color(0x00, 0x00, 0x00));
		chunk = new Chunk("\nI. Resumen general", font2);
		document.add(chunk);
                chunk = new Chunk("\n\n1. Nombre del Proyecto:", font2);
		document.add(chunk);             
                chunk = new Chunk("\n\n2. Datos del proponente:", font2);
		document.add(chunk);
                document.add(new Paragraph("\n\n"));
                chunk = new Chunk("Nombre y apellido de la persona responsable del proyecto:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
                PdfPTable table = new PdfPTable(2);
		table.addCell(phrase);
                chunk = new Chunk("Correo electrónico:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
		table.addCell(phrase);
		table.addCell(".");
		table.addCell(".");		
		
		document.add(table);	
                document.add(new Paragraph("\n\n"));
                PdfPTable table1 = new PdfPTable(2);
                chunk = new Chunk("Dirección:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
		table1.addCell(phrase);
                chunk = new Chunk("Teléfonos:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
		table1.addCell(phrase);
		table1.addCell(".");
		table1.addCell(".");
		document.add(table1);
                Paragraph parag = new Paragraph();
                parag.setAlignment(4);
                chunk = new Chunk("\nII. Datos de la dependencia o profesor que avala la propuesta\n\n", font2);                
		parag.add(chunk);               
                Chunk chunk2 = new Chunk("Para poder presentar un proyecto se debe "
                        + "contar con un aval o apoyo institucional, el cual puede variar según las siguientes "
                        + "modalidades:\n\n" +
                "\n", font3);
                parag.add(chunk2);
                document.add(parag);
                parag = new Paragraph();
                parag.setAlignment(4);
                parag.setIndentationLeft(40);
                Chunk chunk4 = new Chunk("a.   Proyectos presentados por Estudiantes: \n", font2);
                parag.add(chunk4);
                chunk2 = new Chunk("\nRequiere el aval de un profesor o empleado, " + 
                "que asume el rol de tutor o asesor en la puesta en practica del proyecto. Igualmente, "+  
                "quien avala asume la responsabilidad de representar al proyecto en los trámites "+ 
                "relativos a asignación de recursos y rendiciones administrativas.\n" +
                "Se requiere el V.B. de la Coordinación correspondiente a la carrera cursada por el\n "+ 
                "o los estudiantes. \n", font3);
                chunk4 = new Chunk("\nb.   Proyectos presentados por profesores, empleados y obreros:  ", font2);
                parag.add(chunk2);
                parag.add(chunk4);
                document.add(parag);
                parag = new Paragraph();
                parag.setAlignment(4);
                parag.setIndentationLeft(40);
                chunk4 = new Chunk("\nProfesores", font4);
                parag.add(chunk4);
                chunk2 = new Chunk(": Requiere el aval del Departamento correspondiente. Para este caso el proponente "
                        + "asume la responsabilidad en cuanto a la realización del proyecto, así como de los trámites "
                        + "requeridos para  la "
                        + "asignación de recursos y rendiciones administrativas.\n", font3);
                parag.add(chunk2);
                document.add(parag);
                parag = new Paragraph();
                parag.setAlignment(4);
                parag.setIndentationLeft(40);
                chunk4 = new Chunk("\nEmpleados y Obreros", font4);
                parag.add(chunk4);
                chunk2 = new Chunk(": Requiere el aval de alguna unidad o dependencia de la USB (preferiblemente "
                        + "la más vinculada al área de realización del proyecto).\n"
                        + "Para aquellos proyectos que impliquen la realización de actividades en el horario laboral del "
                        + "proponente se requiere el V.B de la unidad de Adscripción. El proponente asume la responsabilidad "
                        + "en cuanto a la realización del proyecto, así como de los trámites requeridos para la asignación "
                        + "de recursos y rendiciones administrativas.\n\n\n\n", font3);
                parag.add(chunk2);
                document.add(parag); 
                table1 = new PdfPTable(1);
                chunk = new Chunk("3.  Dependencia que avala la propuesta:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
		table1.addCell(phrase);
                parag = new Paragraph();
                parag.setAlignment(4);
                parag.setIndentationLeft(80);
                chunk = new Chunk("\n     Nombre de la dependencia: ", font3);
                parag.add(chunk);
                chunk = new Chunk("\n\n     Teléfono: ", font3);
                parag.add(chunk);
                chunk = new Chunk("\n\n     Responsable: ", font3);
                parag.add(chunk);
                chunk = new Chunk("\n\n     Firma: ", font3);
                parag.add(chunk);
                chunk = new Chunk("_____________                            "
                        + "Sello:____________________ \n\n", font3);
                parag.add(chunk);
		table1.addCell(parag);		
		document.add(table1);
                
                table1 = new PdfPTable(1);
                chunk = new Chunk("4. Profesor que presenta o avala la propuesta:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
		table1.addCell(phrase);
                parag = new Paragraph();
                parag.setAlignment(4);
                parag.setIndentationLeft(80);
                chunk = new Chunk("\n     Nombre: ", font3);
                parag.add(chunk);
                chunk = new Chunk("\n\n     Departamento de adscripción: ", font3);
                parag.add(chunk);
                chunk = new Chunk("\n\n     Teléfono: ", font3);
                parag.add(chunk);                
                chunk = new Chunk("\n\n     Firma: ", font3);
                parag.add(chunk);
                chunk = new Chunk("_____________\n\n", font3);
                parag.add(chunk);
		table1.addCell(parag);		
		document.add(table1);
                                
                table1 = new PdfPTable(1);
                chunk = new Chunk("5. VB del Departamento o Unidad de Adscripción:", font2);
                phrase = new Phrase(30, ""); 
		phrase.add(chunk);
		table1.addCell(phrase);
                parag = new Paragraph();
                parag.setAlignment(4);
                parag.setIndentationLeft(80);
                chunk = new Chunk("\n     Nombre de la dependencia: ", font3);
                parag.add(chunk);                
                chunk = new Chunk("\n\n     Teléfono: ", font3);
                parag.add(chunk);                
                chunk = new Chunk("\n\n     Responsable: ", font3);
                parag.add(chunk);
                chunk = new Chunk("\n\n     Firma: ", font3);
                parag.add(chunk);
                chunk = new Chunk("_____________                            "
                        + "Sello:____________________ \n\n", font3);
                parag.add(chunk);
		table1.addCell(parag);		
		document.add(table1);
                
		document.close();
                return buffer;
		
	}
	
	
	public static void main(String[] args) {
		try{
			TextWrapping textWrapping = new TextWrapping();
		}catch(Exception e){
			System.out.println(e);
		}
		
	}

}